package com.itlong.cloud.noncore.commons;

import com.itlong.cloud.POJO.PO.OperationLogPO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.Map;

/**
 * <desc>
 *      用户登录日志信息业务处理暴露接口
 * </desc>
 *
 * @createDate 2017/10/16
 */
@FeignClient("non-core-service")
public interface IOperationLogServiceClient {
    /**
     * <desc>
     *      保存用户操作日志信息
     * </desc>
     *
     * @param operationLogPO 操作日志实体类
     * @return
     * @author Jiaqi.X
     * @createDate 2017/10/16
     */
    @RequestMapping(path = "/sys/logManage/operationLog/save")
    Integer save(@RequestBody OperationLogPO operationLogPO) throws Exception;

    /**
     * <desc>
     *      保存开发者访问日志
     * </desc>
     *
     * @param map 日志信息
     * @return
     * @author wangzhi
     * @createDate 2018/12/19
     */
    @RequestMapping(path = "/sys/logManage/operationLog/saveDeveloperLog")
    Integer saveDeveloperLog(@RequestBody Map<String, Object> map) throws Exception;

    /**
     * <desc>
     *      保存开发者异常日志
     * </desc>
     *
     * @param map 日志信息
     * @return
     * @author Qiang.S
     * @createDate 2019/09/18
     */
    @RequestMapping(path = "/sys/logManage/operationLog/saveDeveloperExceptionLog")
    Integer saveDeveloperExceptionLog(@RequestBody Map<String, Object> map) throws Exception;
}
